/**
 * jims
 */
package com.jims.master.modules.drug.service;

import com.jims.master.common.persistence.Page;
import com.jims.master.common.service.CrudService;
import com.jims.master.modules.drug.dao.DrugDictDao;
import com.jims.master.modules.drug.entity.DrugDict;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.io.FileInputStream;
import java.util.List;

/**
 * 药品字典维护Service
 * @author zhuq
 * @version 2017-03-02
 */
@Service
@Transactional(readOnly = true)
public class DrugDictService extends CrudService<DrugDictDao, DrugDict> {


    public List<DrugDict> findAutoCompleteList(DrugDict drugDict,String q,String limit) {
        return dao.findAutoCompleteList(drugDict,q,limit);
    }

    public Page<DrugDict> findPage(Page<DrugDict> page, DrugDict drugDict) {
        return super.findPage(page, drugDict);
    }

    /*
    * @朱齐
    * 根据deugCode查询drugDict列表
    * */
    public List<DrugDict> findByDrugCode(DrugDict drugDict) {
        return dao.findByDrugCode(drugDict);
    }

    @Transactional(readOnly = false)
    public String saveDrugDictExcel() {
//        Workbook readwb = null;
//        try
//        {
//            //构建Workbook对象, 只读Workbook对象
//            //直接从本地文件创建Workbook
//            FileInputStream instream = new FileInputStream("C:/Users/zhu/Desktop/整理后数据/drug_name_dict.xls");
//            readwb = Workbook.getWorkbook(instream);
//            //Sheet的下标是从0开始
//            //获取第一张Sheet表
//            Sheet readsheet = readwb.getSheet(0);
//            //获取Sheet表中所包含的总列数
//            int rsColumns = readsheet.getColumns();
//            //获取Sheet表中所包含的总行数
//            int rsRows = readsheet.getRows();
//            //获取指定单元格的对象引用
//
//            for (int i = 0; i < rsRows; i++)
////            for (int i = 0; i < 2; i++)
//
//                {
//                DrugDict drugDict=new DrugDict();
//                for (int j = 0; j < rsColumns; j++)
//                {
//                    if(j==0){
//                        Cell cell = readsheet.getCell(j, i);
//                        drugDict.setDrugCode(cell.getContents());
//                    }
//                    if(j==1){
//                        Cell cell = readsheet.getCell(j, i);
//                        drugDict.setDrugName(cell.getContents());
//                    }
//                    if(j==2){
//                        Cell cell = readsheet.getCell(j, i);
//                        drugDict.setUnit(cell.getContents());
//                    }
//                    if(j==4){
//                        Cell cell = readsheet.getCell(j, i);
//                        drugDict.setDrugContent(cell.getContents());
//                    }
//                    if(j==5){
//                        Cell cell = readsheet.getCell(j, i);
//                        drugDict.setDosePerUnit(cell.getContents());
//                    }
//                    if(j==6){
//                        Cell cell = readsheet.getCell(j, i);
//                        drugDict.setDoseUnits(cell.getContents());
//                    }
//                    if(j==8){
//                        Cell cell = readsheet.getCell(j, i);
//                        if("是".equals(cell.getContents())){
//                            drugDict.setIsOtc("1");
//                        }else {
//                            drugDict.setIsOtc("0");
//                        }
//
//                    }
//
//                }
//                    drugDict.setDrugSpec(drugDict.getDosePerUnit()+drugDict.getDoseUnits());
//                    drugDict.setInputCode(ChineseCharToEnUtils.getAllFirstLetter(drugDict.getDrugName()));
//                    drugDict.setToxiProperty("A");
//                    drugDict.setLimitClass("0");
//                save(drugDict);
//                System.out.println(drugDict.getDrugName());
//            }
//
//        } catch (Exception e) {
//            e.printStackTrace();
//        } finally {
//            if(readwb!=null){
//                readwb.close();
//            }
//        }

        return "";
    }

}